package com.yuandian.api.business_monitor.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;

/**
 * 说明：业务概况vo对象
 *
 * @Author yanjun
 * @Date 2020/10/26 16:27
 */
@Data
@HeadRowHeight(30)
public class BusinessOverviewCopyVo {
    /**
     * 序号列
     */
    @ColumnWidth(20)
    private Integer id;
    /**
     * 系统id
     */
    @ExcelIgnore
    private Integer systemId;

    /**
     * 系统名称
     */
    @ExcelIgnore
    private String systemName;

    /**
     * 业务编码
     */
    @ExcelIgnore
    private String businessCode;

    /**
     * 业务名称
     */
    @ColumnWidth(20)
    private String businessName;

    /**
     * 告警类型id
     */
    @ExcelIgnore
    private Integer alarmTypeId;

    /**
     * 访问量
     */
    @ColumnWidth(20)
    private Integer visitCount;

    /**
     * 交易量
     */
    @ColumnWidth(20)
    private Integer completeVisitCount;

    /**
     * 平均时长
     */

//    @ColumnWidth(30)
//    @ExcelProperty(value = "平均时长", converter = DurationFormatConverter.class)
    @ExcelIgnore
    private String averageDurationTime;

    /**
     * 平均服务端耗时
     */

//    @ColumnWidth(30)
//    @ExcelProperty(value = "平均服务端耗时", converter = DurationFormatConverter.class)
    @ExcelIgnore
    private String averageServerTime;

    /**
     * 平均客户端耗时
     */
//    @ColumnWidth(30)
//    @ExcelProperty(value = "平均客户端耗时", converter = DurationFormatConverter.class)
    @ExcelIgnore
    private String averageClientTime;

    /**
     * 交易量
     */
    @ExcelIgnore
    private Integer successVisitCount;

    /**
     * 平均处理时长
     */
    @ExcelIgnore
    private String serverAvgResponseTime;

    /**
     * 平均处理时长字符串
     */
    @ColumnWidth(20)
    private String serverAvgResponseTimeStr;

    /**
     * 失败数
     */
    @ColumnWidth(20)
    private Integer failVisitCount;

    /**
     * 告警访问量
     */
    @ColumnWidth(20)
    private Integer alarmVisitCount;


    /**
     * 成功率
     */
    @ColumnWidth(20)
    private String successRate;

    /**
     * 健康度
     */
    @ColumnWidth(20)
    private String healthRate;

    /**
     * 时间标签
     */
    @ExcelIgnore
    private String labelTime;

    /**
     * 步骤Code
     */
    @ExcelIgnore
    private String stepCode;

    /**
     * 告警受理量
     */
    @ExcelIgnore
    private Integer alarmCompleteVisitCount;

    /**
     * 失败受理量
     */
    @ExcelIgnore
    private Integer failCompleteVisitCount;

    /**
     * 平均办理时长
     */
    @ExcelIgnore
    private Long avgDealTime;

    /**
     * 服务端平均处理时长
     */
    @ExcelIgnore
    private Long avgServerDealTime;

    /**
     * 平均请求传输耗时
     */
    @ExcelIgnore
    private Long clientAvgTranslateTime;

    /**
     * 平均响应传输耗时
     */
    @ExcelIgnore
    private Long serverAvgTranslateTime;

    /**
     * 平均响应时长
     */
    @ExcelIgnore
    private String avgResponseTime;

}
